/**
 * 
 * 
 * 本章我们粗略地讲解了一个MVC框架。一个MVC框架要考虑的外界环境因素太多了，而且本身MVC框架也是一个轻量型的，
 * 就是希望我们编写的程序在没有Struts、Spring MVC 等框架的环境中不需要大规模的修改照样能够运行，所以编写
 * 一个框架不是一件容易的事情。幸运的是我们以学习模式为主，通过设计MVC框架来了解设计模式。我们来看看本章用 到了哪些模式。</br>
 * ● 工厂方法模式：</br>
 * 通过工厂方法模式把所有的拦截器链实现出来，方便在系统初始化时 直接处理。</br>
 * ● 单例模式：Action的默认配置都是单例模式，在一般的应用中单例已经足够了，在复
 * 杂情况下可以使用享元模式提供应用性能，减少单例模式的性能隐患。</br>
 * ● 责任链模式：</br>
 * 建立拦截器链以及过滤器链，实现任务的链条化处理。 </br>
 * ● 迭代器模式：</br>
 * 非常方便地遍历拦截器链内的拦截器，而不用再自己写遍历拦截器链的 方法。</br>
 * ● 中介者模式：</br>
 * 以核心控制器为核心，其他同事类都负责为核心控制器“打工”，保证核 心控制器瘦小、稳定。</br>
 * ● 观察者模式：</br>
 * 配置文件修改时，不用重启应用可以即刻生效，提供使用者的体验。 </br>
 * ● 桥梁模式：</br>
 * 使不同的视图配合不同的语言文件，为终端用户展示不同的界面。</br>
 * ● 策略模式：</br>
 * 对XML文件的检查可以使用两种不同的策略，而且可以在测试机和开发机 中使用不同的检查策略，方便系统间自由切换。 </br>
 * ● 访问者模式：</br>
 * 在解析XML文件时，使用访问者非常方便地访问到需要的对象。</br>
 * ● 适配器模式：</br>
 * 把一个开发者不熟悉的对象转换为熟悉的对象，避免工具或框架对开发 者的影响。</br>
 * ● 门面模式：</br>
 * Action分发器负责所有的Action的分发工作，它提供了一个调用Action的唯 一入口，避免外部模块深入到模型模块内部。 </br>
 * ● 代理模式：</br>
 * 大量使用动态代理，确保了框架的智能化。</br>
 * MVC框架有非常成熟的源码，有兴趣的读者可以看看Struts、Spring MVC等源码，其中包含了非常多的设计模式。读源码是提
 * 高设计技能和开发技能的一个重要途径，看一本书是与作者进行了一次心灵交互，看一份源码是与一群 作者进行心灵交互，对提高自己 的技术修 养有非常大的帮助。
 * 
 * @author kongmou
 * @date 2018年7月16日下午1:42:59
 * @since jdk 1.8
 * 
 * @version 1.0
 */
package twentyThreePattern.zMixed.mvc;